1. Field of the Invention
This invention relates to storing data and more particularly relates to ensuring data validity in a data storage process.
2. Description of the Related Art
When data is moved from a central processing unit (“CPU”) or memory of a computer to a data storage device, the data is often transmitted over different buses and networks, is processed, and is finally stored on the data storage device. To protect the data against stuck-bit errors such as address line failures, control line failures, or other hardware failure and to protect against transient errors, such as a bit flip caused by alpha particles, noise, voltage fluctuations, etc. the data is typically protected through each process and transmission using some type of data protection scheme. For example, while data is processed, the data may be protected using some type of parity protection. When the data is transmitted, the data may be encoded such that when the data is received and decoded, data errors can be detected and possibly corrected. Error correcting code (“ECC”) may also be used to determine if an error exists in the data when the data is read and to correct errors in the data.
When data is checked and/or decoded at the end of a transmission or process, there may be a few process steps or transmission steps where the data is unprotected creating gaps in protection. In many cases this gap in protection may be deemed insignificant. However, as reliability of data storage systems increases, a gap in error detection and correction protection may become significant. What is needed is a way to increase data validity in a data storage process.